function [ u ] = evaluateInteriorPoint( x, y, domain2D, theta )
%EVALUATEINTERIORPOINT Summary of this function goes here
%   Detailed explanation goes here

n = size(x, 1);
m = size(domain2D.ex, 2);

u = zeros(n, 2);

for i = 1 : n
    
    p = [x(i), y(i)];
    
    for j = 1 : m        
        
        qi0 = j;
        qi1 = mod(j, m) + 1;
        
        q0 = [domain2D.x(qi0), domain2D.y(qi0)];
        q1 = [domain2D.x(qi1), domain2D.y(qi1)];
              
        qn = [domain2D.nx(j), domain2D.ny(j)];
        
        v0 = -1 * evaluateQuadraturePoint(p, q0);
        v1 = -1 * evaluateQuadraturePoint(p, q1);
        
        u(i, :) = u(i, :) + ((v0 + v1) * domain2D.l(j) / 2.0 * theta(2*j-1:2*j))'; 
    end
    
end

end

